using IM.Easy.Core.ServiceLifetime;
using IM.Easy.Core.Services;
using IM.Easy.Core.Utils;
using IM.Easy.Infrastructure.Query;
using IM.Easy.Entity.System;
using IM.Easy.SystemServices.Dtos;

namespace IM.Easy.SystemServices.IServices
{
    public interface IRoleMenuService
    {
        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        bool Save(long roleId, long[] menuIds);

        /// <summary>
        /// 获取菜单
        /// </summary>
        /// <param name="roldId"></param>
        /// <returns></returns>
        List<SysMenu> GetMenus(long roldId);

        /// <summary>
        /// 通过获取多角色菜单
        /// </summary>
        /// <param name="roleIds"></param>
        /// <returns></returns>
        List<SysMenu> GetMenus(params long[] roleIds);


        /// <summary>
        /// 通过角色标识获取菜单
        /// </summary>
        /// <param name="key"></param>
        /// <returns></returns>
        List<SysMenu> GetMenus(string roleKey);
    }
}
